#pragma execution_character_set("utf-8")

#include "Client_Emoj_Font.h"
#include <QDebug>

Client_Emoj_Font::Client_Emoj_Font()
{
	_Emotion = NULL;
	_Font = NULL;
}

void Client_Emoj_Font::creatEmotionWidget(QWidget *parent)
{
	if (_Emotion != NULL)
		return;

	_Emotion = new EmotionWidget(parent);
	connect(_Emotion, &EmotionWidget::signalEmotionImg, this, &Client_Emoj_Font::slotGetEmotionWidgetImg);
	_Emotion->show();
}

void Client_Emoj_Font::closeEmotionWidget()
{
	if (_Emotion == NULL)
		return;

	disconnect(_Emotion, &EmotionWidget::signalEmotionImg, this, &Client_Emoj_Font::slotGetEmotionWidgetImg);
	_Emotion->close();
	_Emotion = NULL;
}

void Client_Emoj_Font::creatFontWidget(QWidget *parent)
{
	if (_Font != NULL)
		return;

	_Font = new FontWidget(parent);
	connect(_Font, &FontWidget::signalChangeFormatChar, this, &Client_Emoj_Font::slotGetFont);
	_Font->show();
}

void Client_Emoj_Font::closeFontWidget()
{
	if (_Font == NULL)
		return;

	disconnect(_Font, &FontWidget::signalChangeFormatChar, this, &Client_Emoj_Font::slotGetFont);
	_Font->close();
	_Font = NULL;
}

FontDetailFromInI Client_Emoj_Font::getFontDetailFromInI()
{
	FontWidget fon;
	return fon.getFontDetailFromInI();
}

void Client_Emoj_Font::slotGetEmotionWidgetImg(QString fileName)
{
	emit signalEmotionImg(fileName);
}

void Client_Emoj_Font::slotGetFont(int fontType, QString Value)
{
	emit signalChangeFormatChar(fontType, Value);
}

Client_Emoj_Font::~Client_Emoj_Font()
{
	if (_Font != NULL)
		closeFontWidget();

	if (_Emotion != NULL)
		closeEmotionWidget();
}